#ifndef BLOCKMODEL_H_
#define BLOCKMODEL_H_

#include "Model.h"
#include "Position.h"

class BlockModel : public Model
{
public:
    BlockModel(const Position& position);
    virtual ~BlockModel();

    Position getPosition();
    void rotateCWAround(const Position& origin);
    void rotateCCWAround(const Position& origin);
    void updateClients();
    void reset();

private:
    Position position;
    Position newPosition;
};

typedef std::list<BlockModel*> BlockModels;

#endif
